﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BE;
using BLL;
using System.Text;
using System.Web.Security;
 

namespace VentaPorCatalogos.Login
{
    public partial class Login : System.Web.UI.Page
    {
        #region "Events"
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        #region "Buttons"
        protected void btnAceptar_Click(object sender, EventArgs e)
        {
            try
            {
                if (ObtenerUsuario(txtUsuario.Text.Trim(), txtPassword.Text.Trim()))
                {
                    FormsAuthentication.RedirectFromLoginPage(txtUsuario.Text.Trim(),false);
                }
                else
                {
                    ShowMessage("Usuario o Contraseña incorrectos");
                    txtmensaje.Text = "Usuario o Contraseña incorrectos";
                }
            }
            catch (Exception ex)
            {
                
                throw ex;
            }
        }

        private void ShowMessage(String pMessage)
        {
            StringBuilder wScript = new StringBuilder();
            Type cstype = this.GetType();
            wScript.Append("<script  type='text/javascript' language='javascript'>$().ready(function () { alert(\"" + pMessage + "\");}");
            wScript.Append("</script>");
            ClientScript.RegisterStartupScript(cstype, "ClientScript", wScript.ToString());
        }

        private bool ObtenerUsuario(string pUsuario, string pPassword)
        {
            UsuarioBE oUsuarioBE = new UsuarioBE();
            UsuarioBE oUsuarioAut = null;
            try
            {
                oUsuarioBE.Usuario = pUsuario;
                oUsuarioBE.Password = pPassword;

                // obtener Usuario y password 
                oUsuarioAut = UsuarioBLL.Login(oUsuarioBE);
                if (oUsuarioAut != null )
                {
                    Session.Add("User", oUsuarioAut); 

                     Response.Cookies.Add(new HttpCookie("IdUsuario", oUsuarioAut.IdUsuario.ToString()));
                     Response.Cookies.Add(new HttpCookie("Usuario", oUsuarioAut.Usuario));
                     Response.Cookies.Add(new HttpCookie("NombreApellido", oUsuarioAut.Nombre));
 
                    return  true;
                }

                return false;
            }
            catch (Exception)
            {
                
                throw;
            }
        }
        #endregion
        #endregion
    }
}